lSline

使用最小二乘法进行曲线拟合

语法

[polynomial, coefficients] = lsline(xCoordinate, yCoordinate, option)

说明

[polynomial, coefficients] = lSline(xCoordinate, yCoordinate, option)
返回基于给定的坐标数据 (xCoordinate, yCoordinate) 使用最小二乘法对特定曲线形式进行曲线拟合的结果。

示例

示例 1
拟合形如 的曲线
fun = @(x)2 .* x + 3;
xCoordinate = -5:0.5:5;
xLine = linspace(-5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate);
% or [polynomial, coefficients] = lSline(xCoordinate, yCoordinate, 0);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
1.bmp
示例 2
拟合形如 的曲线
fun = @(x) 2 ./ x + 3;
xCoordinate = 0.5:0.5:5;
xLine = linspace(0.5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate, 1);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
2.bmp
示例 3
拟合形如 的曲线
fun = @(x) 2 ./ (x + 3);
xCoordinate = 0.5:0.5:5;
xLine = linspace(0.5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate, 2);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
3.bmp
示例 4
拟合形如 的曲线
fun = @(x) 1 ./ (2 .* x + 3);
xCoordinate = 0.5:0.5:5;
xLine = linspace(0.5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate, 2);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
4.bmp
示例 5
拟合形如 的曲线
fun = @(x) 0.2 .* exp(0.3 .* x);
xCoordinate = 0.5:0.5:5;
xLine = linspace(0.5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate, 4);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
5.bmp
示例 6
拟合形如 的曲线
fun = @(x) 2 .* x .^ 3;
xCoordinate = 0.5:0.5:5;
xLine = linspace(0.5,5);
yCoordinate = fun(xCoordinate);
[polynomial, ~] = lSline(xCoordinate, yCoordinate, 5);
plot(xCoordinate, yCoordinate, 'r*', xLine, polynomial(xLine), 'b-');
xlabel("x");ylabel("y");
6.bmp

输入参数

xCoordiate - x坐标
要求类型:向量
支持数据类型:single | doouble | int8 | int16 | int32 | int64
参数要求:各元素应互不相等
option
对 x 坐标要求
option
对 x 坐标要求
元素值不能等于0
元素值不能小于或等于0
yCoordinate - y坐标
要求类型:向量
支持数据类型:single | doouble | int8 | int16 | int32 | int64
参数要求:
option
对 y 坐标要求
option
对 y 坐标要求
元素值不能等于0
元素值不能小于0
元素值不能小于或等于0
option - 可选项
要求类型:标量
支持数据类型:single | doouble | int8 | int16 | int32 | int64
可选项:
option
适用曲线形式
option
适用曲线形式

输出参数

polynomial - 最终拟合得到的表达式
类型:标量
数据类型: function_handle
说明:输出内容是关于 x 的一次函数,形式视 option 的内容而定
coefficients - 最终拟合得到的表达式的系数
类型:向量
数据类型:double
说明:向量的第一个元素是列出的曲线形式中的系数 B 的值;向量的第二个元素是列出的曲线形式中的系数 A 的值。

另请参阅

function_handle | lsline